load("//bazel:mongo_src_rules.bzl", "idl_generator", "mongo_cc_benchmark", "mongo_cc_library", "mongo_cc_unit_test")

package(default_visibility = ["//visibility:public"])

exports_files(
    glob([
        "*.h",
        "*.cpp",
    ]),
)

idl_generator(
    name = "batched_delete_stage_gen",
    src = "batched_delete_stage.idl",
    deps = [
        "//src/mongo/db:basic_types_gen",
    ],
)

mongo_cc_library(
    name = "query_shard_server_test_fixture",
    srcs = [
        "query_shard_server_test_fixture.cpp",
    ],
    deps = [
        "//src/mongo/db/pipeline:expression_context_for_test",
        "//src/mongo/db/query:query_test_service_context",
        "//src/mongo/db/sharding_environment:shard_server_test_fixture",
    ],
)

mongo_cc_benchmark(
    name = "distinct_scan_bm",
    srcs = [
        "distinct_scan_bm.cpp",
    ],
    deps = [
        ":query_shard_server_test_fixture",
        "//src/mongo/db:query_exec",
        "//src/mongo/db:service_context_d_test_fixture",
        "//src/mongo/unittest:benchmark_util",
    ],
)
